﻿using System;

namespace Xenta.Enums
{
    /// <summary>
    /// Defines the forum flags.
    /// </summary>
    [Flags]
    public enum ForumFlags
    {
        /// <summary>
        /// Indicates no flags.
        /// </summary>
        None = 0x00000000,

        #region S

        /// <summary>
        /// Indicates that an entity is active.
        /// </summary>
        Active = 0x00000001

        #endregion
    }

    /// <summary>
    /// Defines the topic flags
    /// </summary>
    [Flags]
    public enum ForumTopicFlags
    {
        /// <summary>
        /// Indicates no flags.
        /// </summary>
        None = 0x00000000,

        #region S

        /// <summary>
        /// Indicates that an entity is active.
        /// </summary>
        Active = 0x00000001,

        #endregion

        #region G1

        /// <summary>
        /// The topic is of "General" type.
        /// </summary>
        General = 0x00000010,

        /// <summary>
        /// The topic is of the "Question" type.
        /// </summary>
        Question = 0x00000020,

        /// <summary>
        /// The topic is of "Announcement" type.
        /// </summary>
        Announcement = 0x00000040

        #endregion
    }

    /// <summary>
    /// Defines the rank flags
    /// </summary>
    [Flags]
    public enum ForumRankFlags
    {
        /// <summary>
        /// Indicates no flags.
        /// </summary>
        None = 0x00000000,

        #region S

        /// <summary>
        /// Indicates that an entity is active.
        /// </summary>
        Active = 0x00000001

        #endregion
    }

    /// <summary>
    /// Defines the post flags
    /// </summary>
    [Flags]
    public enum ForumPostFlags
    {
        /// <summary>
        /// Indicates no flags.
        /// </summary>
        None = 0x00000000,

        #region S

        /// <summary>
        /// Indicates that an entity is active.
        /// </summary>
        Active = 0x00000001,

        #endregion

        #region O

        /// <summary>
        /// Indicates that the post is useful.
        /// </summary>
        Useful = 0x00010000,

        /// <summary>
        /// Indicates that the post is useless.
        /// </summary>
        Useless = 0x00020000

        #endregion
    }

    /// <summary>
    /// Defines the member flags
    /// </summary>
    [Flags]
    public enum ForumMemberFlags
    {
        /// <summary>
        /// Indicates no flags.
        /// </summary>
        None = 0x00000000,

        #region S

        /// <summary>
        /// Indicates that an entity is active.
        /// </summary>
        Active = 0x00000001

        #endregion
    }
}
